You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
#3582 added functionality to send a small user agent JSON structure to SQL Server. While this works, it also drags in a reflection-based dependency, and the populated reflection-based information is held in memory, preventing the AssemblyLoadContext from being unloaded.
This PR swaps this over to using the built-in source-generated JSON serializer. This should improve performance slightly, and it's the second of a set of changes needed to enable AssemblyLoadContext unloading.
While I don't think this'll be a problem, it's worth noting that this means we'll need to compile the netfx library using the net6.0+ SDK.
Changes look good, and we should merge this PR even though the design has changed back to pipe-delimited and we won't be using JSON for the User Agent. Still worthwhile to have this in the commit history so we can refer to it in the future if necessary.
This pull request has been marked as stale due to inactivity for more than 30 days.
If you would like to keep this pull request open, please provide an update or respond to any comments. Otherwise, it will be closed automatically in 7 days.
github-actionsbot
added
the
Stale
The Issue or PR has become stale and will be automatically closed shortly if no activity occurs.
label
Dec 25, 2025
Thanks @apoorvdeshmukh, I've just rebased and force-pushed. With that said, I can see #3826 now, and I've got no objection if we want to skip this PR in favour of that one.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
#3582 added functionality to send a small user agent JSON structure to SQL Server. While this works, it also drags in a reflection-based dependency, and the populated reflection-based information is held in memory, preventing the AssemblyLoadContext from being unloaded.
This PR swaps this over to using the built-in source-generated JSON serializer. This should improve performance slightly, and it's the second of a set of changes needed to enable AssemblyLoadContext unloading.
While I don't think this'll be a problem, it's worth noting that this means we'll need to compile the netfx library using the net6.0+ SDK.
Issues
Builds on #3582. Contributes to #1687.
Testing
Automated unit tests continue to function.